/* ============================================================================
* 功能描述 ：主函数
* 作者       ：ggls
* 创建日期 ：2024.5.22
* ----------------------------------------------------------------------------
* 更新历史 ：
*	日期 　　- 修改者   : 更新内容描述
*
* ============================================================================
*/

#ifndef __MAIN_H__
#define __MAIN_H__


#include "cms8s6990.h"
#include <stdlib.h>
#include "cl_misc.h"
#include "hly_uart.h"
#include "hly_uart_cmd.h"
#include "hly_zigbee_communicate.h"
#include "hly_key.h"
#include "hly_time.h"
#include "hly_i2c.h"
#include "hly_lcd.h"
#include "hly_i2c_temp.h"
#include "hly_temp.h"
#include "hly_app.h"
#include "hly_zigbee.h"
#include "hly_buzzer.h"
#include "hly_product.h"

typedef struct 
{
	uint8_t app_data[256];
	uint8_t app_len;
	
	/*消息接收缓冲区*/
	uint8_t rbuf[256];
	uint8_t rbytes;

	uint8_t cmd_flag;		// 是否有接收到命令
	uint8_t cmd_len;
	
}uart0_cmd;

typedef struct
{
	uint8_t		ver; 		//版本

	uint16_t	ser_num;		//序列号
	
}app_ctx_s;



extern u32 s_counter;
extern bit product;
extern bit sj_f;
extern bit kaji_sb;


void hly_time_start(void) ;


void time_z(void);
void _data_tx_pack(void);
void _data3_tx_pack(void);
void _data2_tx_pack(void);
void Hly_get_current(void);
void Hly_get_current_s(void);
unsigned long get_current_ms(void);
unsigned long get_current_s(void);




#endif

